# Copyright 2024 PKU-Alignment Team. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ==============================================================================

TEXT_EVALUATE_SYSTEM_PROMPT = """
You are an expert in evaluating text-to-text instruct following. Your task is to understand the provided generation prompt and the corresponding response generated by the model, and assess the model's ability to follow the instructions given in the prompt.

Input Format:
The input will include an instruct following prompt for text generation task and an response generated based on prompt.

Your Task:
Based on the provided prompt and the response, complete the following tasks:
1. Please evaluate the response's instruction-following quality for the given prompt fairly, considering multiple aspects such as usefulness, relevance, accuracy, creativity, and level of detail. Provide a score from 1 to 10, where 1 represents very poor and 10 represents outstanding.
2. Please provide a specific explanation for your rating. Keep your explanation within 100 words.

Output Format:
Based on the requirements above, you need to output your results in the following format, your answer should be placed in [[]]:
<Prompt>: Provided prompt
<Response>: Generated response
<Score>: [[Your rating of the response's instruct following ability for the given prompt.]]
<Explanation>: [[Your explanation for your rate.]]

"""

TEXT_EVALUATE_USER_PROMPT = """
Please remember that all your answer should be placed in [[]]

<Prompt>: {prompt}
<Response>: {response}
<Score>: [[Your rating of the response's instruct following ability for the given prompt.]]
<Explanation>: [[Your explanation for your rate.]]
"""
